1. Field of the Invention
This invention relates generally to data processing systems and, more particularly, to apparatus for performing floating point operations.
2. Description of the Related Art
The floating point format, in which a number is represented by a (binary) number or fraction with the decimal point in a predetermined position and a number representing the argument of an exponent, has the advantage that the range of numbers capable of being represented in a given storage space is greatly expanded. However, in order to add or subtract two numbers in the floating point format, the fractions of the two numbers must first be aligned so that the decimal point is in the appropriate (aligned) positioned during the operation. A difference is determined between the two number exponent arguments and the difference is used to control the shifting (alignment) of the number fractions.
In the related art, the barrel shifter is typically employed to provide the shifting operation. The barrel shifter provides a crossbar switch between the elements of two buses, control signals determining the element of the first bus coupling the element of the second bus. (The barrel shifter is described in Chapter 5. "Introduction to VLSI Systems" by Carver Mead and Lynn Conway, Addision-Wesley Publishing Company {1980}.) Although this type of shifting apparatus provides high performance, the number of switches (i.e., transistor gate elements) between the two buses requires a large amount of substrate area when implemented using integrated circuit techniques.
A need has therefore been felt for a technique that would permit an alignment (shifting) operation of a binary number that does not involve dedicated apparatus and which does not have an unacceptable impact on performance.